package com.assets.room.entity;

import androidx.room.ColumnInfo;
import androidx.room.Entity;
import androidx.room.Ignore;
import androidx.room.PrimaryKey;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

@Entity(tableName = "t_asset_asset")
public class Asset implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 资产id
     */
    @ColumnInfo(name = "asset_id")
    @PrimaryKey(autoGenerate = true)
    private Long assetId;

    /**
     * 资产编号
     */
    @ColumnInfo(name = "asset_number")
    private String assetNumber;

    @Ignore
    private String aaa;

    /**
     * 使用人
     */
    @ColumnInfo(name = "user_id")
    private String userId;

    /**
     * 管理部门
     */
    @ColumnInfo(name = "dept_id")
    private String deptId;

    /**
     * 资产名称
     */
    @ColumnInfo(name = "asset_name")
    private String assetName;

    /**
     * 型号
     */
    @ColumnInfo(name = "model")
    private String model;

    /**
     * 类别
     */
    @ColumnInfo(name = "type")
    private String type;

    /**
     * 资产状态（1：在用，2：报废，3：待报废，4：闲置，5：在修，6：待领用，7：新增）
     */
    @ColumnInfo(name = "status")
    private String status;

    /**
     * 获取方式（1：购置，2：获赠，3：借入）
     */
    @ColumnInfo(name = "grundlagen")
    private String grundlagen;

    /**
     * 单位（1：张，2：台，3：量，4：个）
     */
    @ColumnInfo(name = "unit")
    private String unit;

    /**
     * 金额
     */
    @ColumnInfo(name = "amount")
    private Double amount;

    /**
     * 入账日期
     */
    @ColumnInfo(name = "createdate")
    private String createdate;

    /**
     * 备注
     */
    @ColumnInfo(name = "remark")
    private String remark;

    /**
     * 存放地方
     */
    @ColumnInfo(name = "place")
    private String place;

    /**
     * 图片
     */
    @ColumnInfo(name = "image")
    private String image;

    /**
     * 使用年限
     */
    @ColumnInfo(name = "year")
    private Double year;

    /**
     * 净残值
     */
    @ColumnInfo(name = "salvage")
    private Double salvage;

    /**
     * RFID
     */
    @ColumnInfo(name = "rfid")
    private String rfid;

    /**
     * 领用时间
     */
    @ColumnInfo(name = "receivesdate")
    private String receivesdate;

    /**
     * 接收人
     */
    @ColumnInfo(name = "receiver")
    private String receiver;

    /**
     * 项目组
     */
    @ColumnInfo(name = "team")
    private String team;

    /**
     * 机构
     */
    @ColumnInfo(name = "company")
    private String company;

    /**
     * 使用部门
     */
    @ColumnInfo(name = "user_dept")
    private String userDept;

    /**
     * 股室类型
     */
    @ColumnInfo(name = "division")
    private String division;

    /**
     * 价值类别
     */
    @ColumnInfo(name = "area")
    private String area;

    /**
     * 管理员
     */
    @ColumnInfo(name = "admin")
    private String admin;

    /**
     * 来源
     */
    @ColumnInfo(name = "source")
    private String source;

    /**
     * 供应商
     */
    @ColumnInfo(name = "supplier")
    private String supplier;

    /**
     * 使用日期
     */
    @ColumnInfo(name = "usedate")
    private String usedate;

    /**
     * 财务编号
     */
    @ColumnInfo(name = "financial_code")
    private String financialCode;

    /**
     * 创建人
     */
    @ColumnInfo(name = "create_user")
    private String createUser;

    /**
     * 品牌
     */
    @ColumnInfo(name = "brand")
    private String brand;

    /**
     * 审核状态
     */
    @ColumnInfo(name = "aduit")
    private String aduit;

    /**
     * 打印状态
     */
    @ColumnInfo(name = "is_print")
    private String isPrint;


    /**
     * 面积
     */
    @ColumnInfo(name = "areavalue")
    private Double areavalue;

    /**
     * 会计凭证号
     */
    @ColumnInfo(name = "accountant")
    private String accountant;

    /**
     * 资产大类
     */
    @ColumnInfo(name = "typex")
    private String typex;



    @ColumnInfo(name = "is_flag")
    private String isFlag;

    @Ignore
    public Asset() {
    }

    public Asset(Long assetId, String assetNumber, String userId,
                 String deptId, String assetName, String model,
                 String type, String status, String grundlagen,
                 String unit, Double amount, String createdate,
                 String remark, String place, String image,
                 Double year, Double salvage, String rfid,
                 String receivesdate, String receiver, String team,
                 String company, String userDept, String division,
                 String area, String admin, String source,
                 String supplier, String usedate, String financialCode,
                 String createUser, String brand, String aduit,
                 String isPrint, Double areavalue, String accountant,
                 String typex, String isFlag) {
        this.assetId = assetId;
        this.assetNumber = assetNumber;
        this.userId = userId;
        this.deptId = deptId;
        this.assetName = assetName;
        this.model = model;
        this.type = type;
        this.status = status;
        this.grundlagen = grundlagen;
        this.unit = unit;
        this.amount = amount;
        this.createdate = createdate;
        this.remark = remark;
        this.place = place;
        this.image = image;
        this.year = year;
        this.salvage = salvage;
        this.rfid = rfid;
        this.receivesdate = receivesdate;
        this.receiver = receiver;
        this.team = team;
        this.company = company;
        this.userDept = userDept;
        this.division = division;
        this.area = area;
        this.admin = admin;
        this.source = source;
        this.supplier = supplier;
        this.usedate = usedate;
        this.financialCode = financialCode;
        this.createUser = createUser;
        this.brand = brand;
        this.aduit = aduit;
        this.isPrint = isPrint;
        this.areavalue = areavalue;
        this.accountant = accountant;
        this.typex = typex;
        this.isFlag = isFlag;
    }

    public String getAaa() {
        return aaa;
    }

    public void setAaa(String aaa) {
        this.aaa = aaa;
    }

    public Long getAssetId() {
        return assetId;
    }

    public void setAssetId(Long assetId) {
        this.assetId = assetId;
    }

    public String getAssetNumber() {
        return assetNumber;
    }

    public void setAssetNumber(String assetNumber) {
        this.assetNumber = assetNumber;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getDeptId() {
        return deptId;
    }

    public void setDeptId(String deptId) {
        this.deptId = deptId;
    }

    public String getAssetName() {
        return assetName;
    }

    public void setAssetName(String assetName) {
        this.assetName = assetName;
    }

    public String getModel() {
        return model;
    }

    public void setModel(String model) {
        this.model = model;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getGrundlagen() {
        return grundlagen;
    }

    public void setGrundlagen(String grundlagen) {
        this.grundlagen = grundlagen;
    }

    public String getUnit() {
        return unit;
    }

    public void setUnit(String unit) {
        this.unit = unit;
    }

    public Double getAmount() {
        return amount;
    }

    public void setAmount(Double amount) {
        this.amount = amount;
    }

    public String getCreatedate() {
        return createdate;
    }

    public void setCreatedate(String createdate) {
        this.createdate = createdate;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getPlace() {
        return place;
    }

    public void setPlace(String place) {
        this.place = place;
    }

    public String getImage() {
        return image;
    }

    public void setImage(String image) {
        this.image = image;
    }

    public Double getYear() {
        return year;
    }

    public void setYear(Double year) {
        this.year = year;
    }

    public Double getSalvage() {
        return salvage;
    }

    public void setSalvage(Double salvage) {
        this.salvage = salvage;
    }

    public String getRfid() {
        return rfid;
    }

    public void setRfid(String rfid) {
        this.rfid = rfid;
    }

    public String getReceivesdate() {
        return receivesdate;
    }

    public void setReceivesdate(String receivesdate) {
        this.receivesdate = receivesdate;
    }

    public String getReceiver() {
        return receiver;
    }

    public void setReceiver(String receiver) {
        this.receiver = receiver;
    }

    public String getTeam() {
        return team;
    }

    public void setTeam(String team) {
        this.team = team;
    }

    public String getCompany() {
        return company;
    }

    public void setCompany(String company) {
        this.company = company;
    }

    public String getUserDept() {
        return userDept;
    }

    public void setUserDept(String userDept) {
        this.userDept = userDept;
    }

    public String getDivision() {
        return division;
    }

    public void setDivision(String division) {
        this.division = division;
    }

    public String getArea() {
        return area;
    }

    public void setArea(String area) {
        this.area = area;
    }

    public String getAdmin() {
        return admin;
    }

    public void setAdmin(String admin) {
        this.admin = admin;
    }

    public String getSource() {
        return source;
    }

    public void setSource(String source) {
        this.source = source;
    }

    public String getSupplier() {
        return supplier;
    }

    public void setSupplier(String supplier) {
        this.supplier = supplier;
    }

    public String getUsedate() {
        return usedate;
    }

    public void setUsedate(String usedate) {
        this.usedate = usedate;
    }

    public String getFinancialCode() {
        return financialCode;
    }

    public void setFinancialCode(String financialCode) {
        this.financialCode = financialCode;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public String getBrand() {
        return brand;
    }

    public void setBrand(String brand) {
        this.brand = brand;
    }

    public String getAduit() {
        return aduit;
    }

    public void setAduit(String aduit) {
        this.aduit = aduit;
    }

    public String getIsPrint() {
        return isPrint;
    }

    public void setIsPrint(String isPrint) {
        this.isPrint = isPrint;
    }

    public Double getAreavalue() {
        return areavalue;
    }

    public void setAreavalue(Double areavalue) {
        this.areavalue = areavalue;
    }

    public String getAccountant() {
        return accountant;
    }

    public void setAccountant(String accountant) {
        this.accountant = accountant;
    }

    public String getTypex() {
        return typex;
    }

    public void setTypex(String typex) {
        this.typex = typex;
    }

    public String getIsFlag() {
        return isFlag;
    }

    public void setIsFlag(String isFlag) {
        this.isFlag = isFlag;
    }

    @Override
    public String toString() {
        return "Asset{" +
                "assetId : '" + assetId + '\'' +
                ", assetNumber : '" + assetNumber + '\'' +
                ", userId : '" + userId + '\'' +
                ", deptId : '" + deptId + '\'' +
                ", assetName : '" + assetName + '\'' +
                ", model : '" + model + '\'' +
                ", type : '" + type + '\'' +
                ", status : '" + status + '\'' +
                ", grundlagen : '" + grundlagen + '\'' +
                ", unit : '" + unit + '\'' +
                ", amount : " + amount +
                ", createdate : '" + createdate + '\'' +
                ", remark : '" + remark + '\'' +
                ", place : '" + place + '\'' +
                ", image : '" + image + '\'' +
                ", year : " + year +
                ", salvage : " + salvage +
                ", rfid : '" + rfid + '\'' +
                ", receivesdate : '" + receivesdate + '\'' +
                ", receiver : '" + receiver + '\'' +
                ", team : '" + team + '\'' +
                ", company : '" + company + '\'' +
                ", userDept : '" + userDept + '\'' +
                ", division : '" + division + '\'' +
                ", area : '" + area + '\'' +
                ", admin : '" + admin + '\'' +
                ", source : '" + source + '\'' +
                ", supplier : '" + supplier + '\'' +
                ", usedate : '" + usedate + '\'' +
                ", financialCode : '" + financialCode + '\'' +
                ", createUser : '" + createUser + '\'' +
                ", brand : '" + brand + '\'' +
                ", aduit : '" + aduit + '\'' +
                ", isPrint : '" + isPrint + '\'' +
                ", areavalue : " + areavalue +
                ", accountant : '" + accountant + '\'' +
                ", typex : '" + typex + '\'' +
                ", isFlag : '" + isFlag + '\'' +
                '}';
    }
}